package com.cxyd.modules.wms.service;

import com.cxyd.common.page.PageData;
import com.cxyd.common.service.CrudService;
import com.cxyd.common.utils.ProcResult;
import com.cxyd.common.utils.Result;
import com.cxyd.modules.api.dto.StockDetailDTO;
import com.cxyd.modules.api.report.RestCount;
import com.cxyd.modules.api.report.StockDayRes;
import com.cxyd.modules.wms.dto.StockDTO;
import com.cxyd.modules.wms.entity.StockEntity;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;
import java.util.Map;

/**
 * 库存信息
 *
 * @author g_Cycle gengruyi01@163.com
 * @since 1.0.0 2023-04-27
 */
public interface StockService extends CrudService<StockEntity, StockDTO> {
    List<StockDetailDTO> stockQuery(Map<String, Object> params);

    PageData<StockDTO> checkPage(Map<String, Object> params);

    ProcResult stockFreeze(List<StockDTO> dtos);

    ProcResult stockCheck(Map<String, Object> params);
    ProcResult mergeCall(Map<String, Object> params);

    ProcResult checkAffirm(Map<String, Object> params);

    ProcResult deleteReel(Map<String, Object> params);

    String contLocateGet(String reelId);

    List<StockDTO> getList(Map<String, Object> params);

    ProcResult lock(Map<String,Object> params);

    StockDayRes getstockDays();

    StockDayRes getstockDaysDvcNo(String dvcNo);

    RestCount getRestCount();
}